Skip to content

Release 0.8.0 - #81

Merged
bbaranow merged 22 commits into
mainfrom
develop
Aug 28, 2025
Merged

Release 0.8.0#81
bbaranow merged 22 commits into
mainfrom
develop

Conversation

@bbaranow

Copy link
Copy Markdown
Collaborator

No description provided.

…test suite

- New LaplacianNB_new.py with sklearn BaseEstimator compliance
- Fingerprint utility functions for RDKit integration
- Full sklearn ecosystem support (pipelines, cross-validation, grid search)
- Comprehensive test suite ensuring backward compatibility
- FingerprintTransformer for seamless pipeline integration
- Memory-efficient sparse matrix support
- Updated package structure and dependencies
- Add legacy input format detection to new LaplacianNB version
- Implement helpful error messages for deprecated input formats
- Enable dynamic versioning from __init__.py in pyproject.toml
- Fix Python version mismatch causing CI failures (3.9 → 3.10)
- Update all GitHub Actions workflows to use Python 3.10
- Fix pre-commit pytest configuration
- Ensure consistency with pyproject.toml requires-python >= 3.10
- Replace conda-based environments with uv for faster and more reliable dependency management
- Update all workflows to use astral-sh/setup-uv@v4 and actions/setup-python@v5
- Simplify build processes by removing conda environment creation steps
- Use uv sync, uv run, and uv tool commands for dependency management and execution
- Remove Windows runner configurations to focus on Ubuntu-only CI for now
- Maintain compatibility with existing pyproject.toml and uv.lock setup
- Consolidate multi-line error messages to single lines
- Ensures consistency with ruff formatting rules
- Fixes CI ruff-format check failure
- Switch from pytest-cov to coverage.py for better uv compatibility
- Add comprehensive coverage configuration to pyproject.toml
- Update all workflows to use 'coverage run -m pytest' instead of pytest --cov
- Lower coverage threshold to 30% for initial setup (was 80%)
- Clean up dependency groups by removing duplicate coverage entry
- Update pre-commit hooks to use coverage for consistency
…ompatibility

- Fixes py-cov-action error: 'Cannot read .coverage files because files are absolute'
- Adds relative_files = true to [tool.coverage.run] section in pyproject.toml
- Removes trailing whitespace in coverage omit patterns
- Enables proper coverage comment generation in GitHub Actions
- Replace 'src.laplaciannb' imports with proper 'laplaciannb' package imports
- Simplify RDKit import handling in test_sklearn_integration.py using pytest.importorskip()
- Remove redundant try/except blocks and skipif decorators
- Improves code clarity and follows Python package import best practices

Addresses code review feedback for cleaner import patterns.
Key Changes

New sklearn-compatible LaplacianNB implementation with proper input validation, sparse matrix support, and sklearn estimator interface
Comprehensive fingerprint utilities for converting molecular fingerprints to sklearn-compatible formats (sparse/dense matrices)
FingerprintTransformer class providing sklearn transformer interface for molecular fingerprint data
Legacy implementation preservation with deprecation warnings and migration guidance
- Remove trusted publishing configuration (id-token permissions, environments)
- Add password parameter using secrets.PYPI_API_TOKEN for main PyPI publishing
- Add password parameter using secrets.TEST_PYPI_API_TOKEN for TestPyPI publishing
- Fixes 'invalid-publisher' error in GitHub Actions workflows

This reverts to the traditional API token-based publishing approach
which is more reliable and easier to configure.
Working CSR matrix as intended with sets. TODO: numpy array (dense matrix)
Checking sklearn integration
Cleanup
@github-actions

Copy link
Copy Markdown

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  src/laplaciannb
  __init__.py
  bayes.py 121-126, 233, 239-242, 270-275, 291
  fingerprint_utils.py 13-18, 64, 119-168, 174-197, 222-360, 365-439
Project Total  

This report was generated by python-coverage-comment-action

@bbaranow
bbaranow merged commit 355c2d3 into main Aug 28, 2025
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant